package com.example.yu.customview_color;

import android.content.Context;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.widget.FrameLayout;

public class MyFrameLayout extends FrameLayout{
    private static final String TAG ="MyFrameLayout";
    public MyFrameLayout(@NonNull Context context) {
        super(context);
    }

    public MyFrameLayout(@NonNull Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
    }

    /**
     * 事件消费
     * @param event
     * @return
     */
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        Log.d(TAG, "onTouchEvent: "+getTag());
        return super.onTouchEvent(event);
    }

    /**
     * 事件分发
     * @param ev
     * @return  表示终止整条事件链的传递， false 只终止该ViewGreoup的子View 的分发
     */
    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        Log.d(TAG, "dispatchTouchEvent: "+getTag());



        return super.dispatchTouchEvent(ev);
    }

    /**
     * 事件拦截 （是否拦截子 View 的事件分发
     * @param ev
     * @return   表示不拦截 事件  false 类似与自己dispatchtouchevent
     * 返回false 一样的效果哦
     */
    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        Log.d(TAG, "onInterceptTouchEvent: "+getTag());

        return false;//默认返回 false
    }
}
